<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>gdata.objson.objutils</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">

<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          objson
      </p></th></tr></table>
    </th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <font size="-1"><b class="breadcrumbs">
        Package&nbsp;gdata ::
        Package&nbsp;objson ::
        Module&nbsp;objutils
      </b></font></br>
    </td>
    <td><table cellpadding="0" cellspacing="0">
      <tr><td align="right"><font size="-2">[show&nbsp;private&nbsp;|&nbsp;<a href="../public/gdata.objson.objutils-module.html">hide&nbsp;private</a>]</font></td></tr>
      <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="gdata.objson.objutils-module.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
    </table></td>
</tr></table>

<!-- =========== START OF MODULE DESCRIPTION =========== -->
<h2 class="module">Module gdata.objson.objutils</h2>

<pre class="literalblock">
wrapper script to provide functions utilize the OBJson parser.

After convert the OBJson object back to dict, it calls cjson encode method
to further convert it back to JSON raw data feed.

Functions provided:
  IsOBJson:     boolean to return whether a pass-in is a OBJson object.
  SanityCheck:  function to raise error if pass-in is not OBJson object.
  info:         nice output of each callable functions and their docstrings.
  gen:          a generator returns a tuple of each object.
  traverse:     traverse the whole object to return tuple of its contents.
  SearchByTag:  search the object by using tag name
  SearchByVal:  search the object by using the value.
  SearchByNS:   search the object by using namespace.
  GetNSNode:    return all node elements containg namespace declarations.
  NameSpace:    return the NameSpaces in the JSON feed.
  CleanNameSpace: remove all related elements from a given OBJson object
                along with the given namespace declaration.
  ToJson:       convert back to the raw JSON feed.
  _ToJson:      protected method to do the actual work.
  display:      used for interactive mode.
</pre>
<hr/>

<!-- =========== START OF FUNCTION SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Function Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#display" class="summary-sig-name"><code>display</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to display the JSON object text content

Args:
  obj: an OBJson object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#gen" class="summary-sig-name"><code>gen</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to return OBJson (obj,attr,val) key pair one at a time.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#GetNSNode" class="summary-sig-name"><code>GetNSNode</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Find the objects contain namespace declarations.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#info" class="summary-sig-name"><code>info</code></a>(<span class=summary-sig-arg>obj</span>,
          <span class=summary-sig-arg>indent</span>)</span></code>
<br />
Function to output each callable method with its docstrings.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#IsOBJson" class="summary-sig-name"><code>IsOBJson</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to check if a object is an OBJson initialized object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#SanityCheck" class="summary-sig-name"><code>SanityCheck</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to perform the sanity check of passing in object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#SearchByNS" class="summary-sig-name"><code>SearchByNS</code></a>(<span class=summary-sig-arg>obj</span>,
          <span class=summary-sig-arg>ns</span>,
          <span class=summary-sig-arg>sub_string</span>)</span></code>
<br />
Function returning a tuple containing search result in the given
namespace.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#SearchByTag" class="summary-sig-name"><code>SearchByTag</code></a>(<span class=summary-sig-arg>obj</span>,
          <span class=summary-sig-arg>key</span>)</span></code>
<br />
Function returning a list of tuple with objects
   containing tag/key.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#SearchByVal" class="summary-sig-name"><code>SearchByVal</code></a>(<span class=summary-sig-arg>obj</span>,
          <span class=summary-sig-arg>val</span>)</span></code>
<br />
Function returning a tuple with objects values containing val substring.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#ToDict" class="summary-sig-name"><code>ToDict</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Wrapper function of the internal JSON feed converter.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#ToJson" class="summary-sig-name"><code>ToJson</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Wrapper function of the internal JSON feed converter.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="gdata.objson.objutils-module.html#traverse" class="summary-sig-name"><code>traverse</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to traverse the OBJson object tree to
visit each attribute value pair.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="../private/gdata.objson.objutils-module.html#_DoHandleURLQuote" class="summary-sig-name"><code>_DoHandleURLQuote</code></a>(<span class=summary-sig-arg>url_string</span>)</span></code>
<br />
Internal function to quote url type of strings in JSON elements.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="../private/gdata.objson.objutils-module.html#_DoToJson" class="summary-sig-name"><code>_DoToJson</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to convert an OBJson object structure back to
   JSON feed.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="../private/gdata.objson.objutils-module.html#_GetNSInfo" class="summary-sig-name"><code>_GetNSInfo</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Return namespaces info for a given object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="_DoHandleURLQuote"></a><span class="summary-sig"><span class="summary-sig-name">_HandleURLQuote</span>(<span class="summary-sig-vararg">*args</span>,
          <span class="summary-sig-kwarg">**kwargs</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="_DoToJson"></a><span class="summary-sig"><span class="summary-sig-name">_ToJson</span>(<span class="summary-sig-vararg">*args</span>,
          <span class="summary-sig-kwarg">**kwargs</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="../private/gdata.objson.objutils-module.html#CleanNameSpace" class="summary-sig-name"><code>CleanNameSpace</code></a>(<span class=summary-sig-arg>obj</span>,
          <span class=summary-sig-arg>ns_name</span>)</span></code>
<br />
The clean way to remove all given namespace related element along
with the declaration out of the given object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="../private/gdata.objson.objutils-module.html#NameSpace" class="summary-sig-name"><code>NameSpace</code></a>(<span class=summary-sig-arg>obj</span>)</span></code>
<br />
Function to return NameSpaces list used in the JSON feed.</td></tr>
</table><br />


<!-- =========== START OF VARIABLE SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Variable Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="../private/gdata.objson.objutils-module.html#__author__"><code>__author__</code></a></b> = <span title="'i3dmaster@gmail.com (Yongjian &quot;Jim&quot; Xu)'"><code><span class="variable-quote">'</span>i3dmaster&#64;gmail.com&nbsp;(Yongjian&nbsp;&quot;Jim&quot;&nbsp;Xu)<span class="variable-quote">'</span>   </code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>tuple</code></font></td>
<td><b><a href="../private/gdata.objson.objutils-module.html#_QUOTED_CHAR"><code>_QUOTED_CHAR</code></a></b> = <span title="('%24', '%26', '%2B', '%2C', '%2F', '%3A', '%3B', '%3D', '%3F', '%40', '%20')"><code>('%24',&nbsp;'%26',&nbsp;'%2B',&nbsp;'%2C',&nbsp;'%2F',&nbsp;'%3A'<span class="variable-ellipsis">...</span></code>
</span></td></tr>
</table><br />


<!-- =========== START OF FUNCTION DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Function Details</th></tr>
</table>

<a name="display"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">display</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to display the JSON object text content

Args:
  obj: an OBJson object.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="gen"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">gen</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to return OBJson (obj,attr,val) key pair one at a time.

Args:
  obj: An OBJson object.

Yields:
  A generator object.

Raises:
  OBJsonRuntimeError: Source not recognizable.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="GetNSNode"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">GetNSNode</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Find the objects contain namespace declarations.

A NS node will be an OBJson object has attribute _ns
which stores all namespaces declaration. No other OBJson objects
should have this attribute.

Args:
  obj: an OBJson object.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="info"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">info</span>(<span class=sig-arg>obj</span>,
          <span class=sig-arg>indent</span>=<span class=sig-default>10</span>)</span>
  </h3>
<pre class="literalblock">
Function to output each callable method with its docstrings.

Args:
  obj: OBJson object for callable method inspection. Do SanityCheck.
  indent: optional format feeder. Default indent value is 10.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="IsOBJson"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">IsOBJson</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to check if a object is an OBJson initialized object.

Args:
  obj: target object to check on.

Returns:
  boolean. Ture when the check object is an OBJson object,
  False otherwise.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="SanityCheck"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">SanityCheck</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to perform the sanity check of passing in object.

Args:
  obj: the target object to check.

Raises:
  OBJsonTypeError: Source not recognizable.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="SearchByNS"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">SearchByNS</span>(<span class=sig-arg>obj</span>,
          <span class=sig-arg>ns</span>,
          <span class=sig-arg>sub_string</span>=<span class=sig-default>None</span>)</span>
  </h3>
<pre class="literalblock">
Function returning a tuple containing search result in the given
namespace.

Args:
  obj: the OBJson object to search on.
  ns:  the namespace to search on.
  sub_string: (optional) string to filter. If None, return all
              matching elements in the given ns.

Returns:
  A tuple of search result containing (obj, attribute, value).
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="SearchByTag"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">SearchByTag</span>(<span class=sig-arg>obj</span>,
          <span class=sig-arg>key</span>)</span>
  </h3>
<pre class="literalblock">
Function returning a list of tuple with objects
   containing tag/key.

Args:
  obj: An OBJson object to search on.
  key: a attribute string to search on. (tag/attribute equal
         to the key will be stored)
         Can either be a string, or a re.compiled SRE object.

Returns:
  A list of tuples containing (obj,attr,value).
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="SearchByVal"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">SearchByVal</span>(<span class=sig-arg>obj</span>,
          <span class=sig-arg>val</span>)</span>
  </h3>
<pre class="literalblock">
Function returning a tuple with objects values containing val substring.

Args:
  obj: An OBJson object to search on.
  val: text value of a attribute in the obj to search on.
       Can be either a string, regex, or re.compiled object.

Returns:
  A list of tuples containing (obj,attr,value)
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="ToDict"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">ToDict</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Wrapper function of the internal JSON feed converter.

Converts OBJson object back to a cjson recognizable dict object.

Args:
  obj: OBJson object.

Returns:
  a cjson recognizable dict object.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="ToJson"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">ToJson</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Wrapper function of the internal JSON feed converter.

After convert the OBJson object back to dict, it calls
cjson encode method to further convert it back to JSON
raw data feed.

Args:
  obj: OBJson object.

Returns:
  JSON raw data string.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="traverse"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">traverse</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to traverse the OBJson object tree to
visit each attribute value pair.

Args:
  obj: either an OBJson object or a list containing objects.

Returns:
  A generator returning (obj,attr,val) pair each time called.

Raises:
  OBJsonRuntimeError,OBJsonTypeError,RuntimeError,TypeError
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="_DoHandleURLQuote"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">_DoHandleURLQuote</span>(<span class=sig-arg>url_string</span>)</span>
  </h3>
<pre class="literalblock">
Internal function to quote url type of strings in JSON elements.

Args:
  url_string: a string needs to be verified.

Returns:
  A url safe string. If the string has already been quoted, it simply
  returns it.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="_DoToJson"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">_DoToJson</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to convert an OBJson object structure back to
   JSON feed.

Args:
  obj: The OBJson object structure

Returns:
  JSON dict object
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="_GetNSInfo"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">_GetNSInfo</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Return namespaces info for a given object.

Args:
  obj: an OBJson object

Yields:
  a generator return a tuple of (obj, 'ns', 'ns_value')
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="CleanNameSpace"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">CleanNameSpace</span>(<span class=sig-arg>obj</span>,
          <span class=sig-arg>ns_name</span>)</span>
  </h3>
<pre class="literalblock">
The clean way to remove all given namespace related element along
with the declaration out of the given object.

Args:
  obj: the OBJson object to operate on.
  ns_name: The namespace name string.
           Must provide full alias name such as
           'xmlns$something'. If only 'xmlns', it treates as of
           the whole namespace will be removed cause anything has
           that as the base namespace.

Returns:
  boolean: Successfully remove returns True, otherwise, False
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="NameSpace"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">NameSpace</span>(<span class=sig-arg>obj</span>)</span>
  </h3>
<pre class="literalblock">
Function to return NameSpaces list used in the JSON feed.

Args:
  obj: the OBJson object. MUST be the top node or feed node
       cause that's where NameSpaces gets defined. any sub nodes
       will not get any value.

Returns:
  a dictionary with all NameSpaces declarations.
</pre>
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>
<br />


<!-- =========== START OF VARIABLE DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Variable Details</th></tr>
</table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="__author__"></a>
<h3>__author__</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
<span title="'i3dmaster@gmail.com (Yongjian &quot;Jim&quot; Xu)'">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
<span class="variable-quote">'</span>i3dmaster&#64;gmail.com (Yongjian &quot;Jim&quot; Xu)<span class="variable-quote">'</span>                              </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="_QUOTED_CHAR"></a>
<h3>_QUOTED_CHAR</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>tuple</code>

      </dd>
<span title="('%24', '%26', '%2B', '%2C', '%2F', '%3A', '%3B', '%3D', '%3F', '%40', '%20')">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
('%24', '%26', '%2B', '%2C', '%2F', '%3A', '%3B', '%3D', '%3F')        </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<br />


<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          objson
      </p></th></tr></table>
    </th>
  </tr>
</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
    <td align="left"><font size="-2">Generated by Epydoc 2.1 on Mon Jul 16 16:43:14 2007</font></td>
    <td align="right"><a href="http://epydoc.sourceforge.net"
                      ><font size="-2">http://epydoc.sf.net</font></a></td>
  </tr>
</table>
</body>
</html>
